package com.meituan.sqt.model.order;

import lombok.Data;

import java.util.Map;

/**
 * @author: chenbocheng02@meituan.com
 * @date: 2022/2/11 2:31 下午
 * @description:
 */
@Data
public class OrderChangeInfo {
    /**
     * 商企通订单ID
     */
    private Long sqtBizOrderId;
    /**
     * 原始业务订单id
     */
    private String origOrderId;
    /**
     * 商企通业务类型
     */
    private Integer sqtType;
    /**
     * 变更类型
     * 10 业务订单状态变更
     * 20 支付状态变更
     * 101 外卖配送状态
     * 102 客票状态变更
     * 103 核销状态变更
     * 104 打车事件变更
     * 201 报备信息变更
     */
    private Integer changeType;
    /**
     * 变更状态
     * changeType为10时,参考订单详情中业务订单状态
     * changeType为20时,参考订单详情中支付状态
     * changeType为101时,参考订单详情中外卖配送状态
     * changeType为102时,结构为TicketStatusInfo格式Json字符串
     * changeType为103时参考订单详情中团购核销状态
     * changeType为104时,参考订单详情中打车订单事件状态的事件码
     * changeType为201时，结构为CanyinReportContentInfo
     */
    private String changeStatus;
    /**
     * 变更时间，13位时间戳，某些情况可能不准,如业务侧推送时间延后
     */
    private Long changeTime;
    /**
     * 三方定制额外推送参数，需要双方协商确定
     * 注: 当changeType为104时,当前值map包含 key:orderStatus , value:[参考订单详情中业务订单状态]
     */
    private Map<String,String> extInfoMap;
}
